SPB Git forge

spb/spb-cloud

Public
10commits 1branches 0releases
3.2 MBsize
maindefault branch
yesterdaylast push
JavaScript 56.7% TypeScript 42.6%
1.0 KB · 40 lines typescript
Raw Blame History
1import { NextRequest, NextResponse } from "next/server";2import { prisma } from "@/lib/prisma";34export async function GET(5  request: NextRequest,6  { params }: { params: { id: string } }7) {8  let metadata = await prisma.fileMetadata.findUnique({9    where: { fileId: params.id },10  });1112  if (!metadata) {13    metadata = await prisma.fileMetadata.create({14      data: { fileId: params.id },15    });16  }1718  return NextResponse.json(metadata);19}2021export async function PATCH(22  request: NextRequest,23  { params }: { params: { id: string } }24) {25  const body = await request.json();26  const data: Record<string, unknown> = {};2728  if (body.description !== undefined) data.description = body.description;29  if (body.isFavorite !== undefined) data.isFavorite = body.isFavorite;30  if (body.customDates !== undefined) data.customDates = body.customDates;3132  const metadata = await prisma.fileMetadata.upsert({33    where: { fileId: params.id },34    create: { fileId: params.id, ...data },35    update: data,36  });3738  return NextResponse.json(metadata);39}40